﻿using System;
using Telerik.Sitefinity.Social.Contracts;

namespace Telerik.Sitefinity.Social.Model
{
    /// <summary>
    /// Represents a recommendation one Person gave to another.
    /// </summary>
    [Telerik.OpenAccess.Persistent]
    public class Recommendation : IRecommendation
    {
        /// <summary>
        /// Gets or sets the id.
        /// </summary>
        /// <value>The id.</value>
        public Guid Id
        {
            get { return this.id; }
            set { this.id = value; }
        }

        /// <summary>
        /// Gets or sets the giver username.
        /// </summary>
        /// <value>The giver username.</value>
        public string GiverUsername
        {
            get { return this.giverUsername; }
            set { this.giverUsername = value; }
        }

        /// <summary>
        /// Gets or sets the receiver username.
        /// </summary>
        /// <value>The receiver username.</value>
        public string ReceiverUsername
        {
            get { return this.receiverUsername; }
            set { this.receiverUsername = value; }
        }

        /// <summary>
        /// Gets or sets the title.
        /// </summary>
        /// <value>The title.</value>
        public string Title
        {
            get { return this.title; }
            set { this.title = value; }
        }

        /// <summary>
        /// Gets or sets the content.
        /// </summary>
        /// <value>The content.</value>
        public string Content
        {
            get { return this.content; }
            set { this.content = value; }
        }

        /// <summary>
        /// Gets or sets the date created.
        /// </summary>
        /// <value>The date created.</value>
        public DateTime DateCreated
        {
            get { return this.dateCreated; }
            set { this.dateCreated = value; }
        }

        private Guid id;
        private string giverUsername;
        private string receiverUsername;
        private string title;
        private string content;
        private DateTime dateCreated;
    }
}
